package dto

// GetUserReq 获取用户请求
// @Description 获取用户请求参数
// @Tags User
// @Accept json
// @Produce json
type GetUserReq struct {
	ID int64 `json:"id" proto:"Id" validate:"required,gt=0"`
}

// ListUsersReq 用户列表请求
// @Description 用户列表查询参数
// @Tags User
// @Accept json
// @Produce json
type ListUsersReq struct {
	Page     int64  `json:"page" proto:"Page" validate:"required,gt=0"`
	PageSize int64  `json:"pageSize" proto:"PageSize" validate:"required,gt=0,lte=100"`
	Name     string `json:"name,omitempty" proto:"Name"`
	Email    string `json:"email,omitempty" proto:"Email"`
	Phone    int64  `json:"phone,omitempty" proto:"Phone"`
	Status   int64  `json:"status,omitempty" proto:"Status" validate:"omitempty,oneof=101 102 103"`
	VipStatus int64 `json:"vipStatus,omitempty" proto:"VipStatus" validate:"omitempty,oneof=880 881 882 883"`
}

// DeleteUserReq 删除用户请求
// @Description 删除用户请求参数
// @Tags User
// @Accept json
// @Produce json
type DeleteUserReq struct {
	ID int64 `json:"id" proto:"Id" validate:"required,gt=0"`
}